home *** CD-ROM | disk | FTP | other *** search
- rndNumber = function(pMin, pMax, pDigits)
- {
- var d = Math.pow(10,pDigits);
- return Math.round((pMin + Math.random() * (pMax - pMin)) * d) / d;
- };
- initRndArray = function(pLoops)
- {
- aRnd = new Array();
- var i = 0;
- while(i < pLoops)
- {
- var k = 1;
- while(k <= maxTileNr)
- {
- aRnd[i * maxTileNr + k - 1] = k;
- k++;
- }
- i++;
- }
- };
- playSound = function(pSound)
- {
- mcSounds.gotoAndPlay(pSound);
- };
- clearBoard = function()
- {
- var i = 0;
- while(i < tilesMax)
- {
- aBoard[i] = 0;
- i++;
- }
- clearLinks();
- };
- clearLinks = function()
- {
- var i = 0;
- while(i < tilesMax)
- {
- this["aLinks" + i] = new Array(2);
- var k = 0;
- while(k < 2)
- {
- this["aLinks" + i][k] = 0;
- k++;
- }
- i++;
- }
- var i = 0;
- while(i < yMax)
- {
- setLink(i * xMax + xMax - 1,0,-1);
- i++;
- }
- var i = 0;
- while(i < xMax)
- {
- setLink(i + xMax * (yMax - 1),1,-1);
- i++;
- }
- };
- setLink = function(pNumber, pLink, pValue)
- {
- this["aLinks" + pNumber][pLink] = pValue;
- };
- getLink = function(pNumber, pLink)
- {
- return this["aLinks" + pNumber][pLink];
- };
- clearStartPosArray = function()
- {
- var i = 0;
- while(i < startPosMax)
- {
- aStartPos[i] = 0;
- i++;
- }
- };
- makeNewTile = function()
- {
- currentTileNr = nextTileNr;
- nextTileNr = aRnd.splice(random(aRnd.length),1)[0];
- if(aRnd.length == 0)
- {
- initRndArray(rndLoops);
- }
- mcNextTile.gotoAndStop(nextTileNr + 1);
- startPos = rndNumber(0,startPosMax - 1,0);
- mcStartPosTile.gotoAndStop(currentTileNr + 1);
- setStartPos();
- };
- setStartPos = function()
- {
- clearStartPosArray();
- aStartPos[startPos] = currentTileNr;
- getStartPos();
- mcStartPosTile._x = aStartTilePos[startPos * 2];
- mcStartPosTile._y = aStartTilePos[startPos * 2 + 1];
- };
- getStartPos = function()
- {
- if(startPos < xMax)
- {
- line = "col";
- dir = 1;
- row = 0;
- col = startPos;
- }
- else if(startPos >= xMax && startPos < xMax + yMax)
- {
- line = "row";
- dir = -1;
- row = startPos - xMax;
- col = xMax - 1;
- }
- else if(startPos >= xMax + yMax && startPos < 2 * xMax + yMax)
- {
- line = "col";
- dir = -1;
- row = yMax - 1;
- col = 2 * xMax - startPos + yMax - 1;
- }
- else
- {
- line = "row";
- dir = 1;
- row = 2 * yMax - startPos + 2 * xMax - 1;
- col = 0;
- }
- };
- initDrop = function()
- {
- mcStartPosTile.gotoAndStop(1);
- posCounter = 0;
- line != "row" ? (maxPos = yMax) : (maxPos = xMax);
- loopFlag = false;
- };
- getBoardPos = function(pNr)
- {
- if(line == "row")
- {
- return row * xMax + (col + dir * pNr);
- }
- return (row + dir * pNr) * xMax + col;
- };
- initCheck = function()
- {
- var i = 0;
- while(i < xMax)
- {
- this["aTilesToKillCol" + i] = new Array();
- i++;
- }
- var i = 0;
- while(i < yMax)
- {
- this["aTilesToKillRow" + i] = new Array();
- i++;
- }
- posCounter = 0;
- line = "row";
- dir = 1;
- row = 0;
- col = 0;
- };
- initTimer = function()
- {
- level >= aLevelTimes.length ? (time = 3) : (time = aLevelTimes[level]);
- };
- getTilesOnBoard = function()
- {
- tilesOnBoard = 0;
- var i = 0;
- while(i < tilesMax)
- {
- if(aBoard[i] != 0)
- {
- tilesOnBoard++;
- }
- i++;
- }
- return tilesOnBoard;
- };
- killAllTiles = function()
- {
- var i = 0;
- while(i < tilesMax)
- {
- this["mcTile" + i].removeMovieClip();
- i++;
- }
- };
- showPause = function()
- {
- var tFormat = new TextFormat();
- tFormat.align = "center";
- tFormat.size = 56;
- tFormat.color = 0;
- tFormat.font = "HOUSE3009-Cyberspace";
- this.createTextField("tPauseS",50000,102,120,282,122);
- tPauseS.embedFonts = true;
- tPauseS.selectable = false;
- tPauseS.text = "game\rpaused";
- tPauseS.setTextFormat(tFormat);
- tFormat.color = 13369344;
- this.createTextField("tPause",50001,100,116,282,122);
- tPause.embedFonts = true;
- tPause.selectable = false;
- tPause.text = "game\rpaused";
- tPause.setTextFormat(tFormat);
- };
- killPause = function()
- {
- pause = false;
- Key.removeListener(pauseListener);
- hidePause();
- };
- hidePause = function()
- {
- tPauseS.removeTextField();
- tPause.removeTextField();
- };
-